This repository has been archived by the owner on Jan 23, 2023. It is now read-only.
[Release/3.1] Address MARS TDS header contained errors #42907
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ports PR dotnet/SqlClient#547 that fixes issue dotnet/SqlClient#85
Summary
Fixes issue dotnet/SqlClient#85 for impacted areas where client applications fail intermittently with below exception:
System.Data.SqlClient.SqlException (0x80131904): The incoming tabular data stream (TDS) protocol stream is incorrect. The MARS TDS header contained errors.
Customer Impact
High. A lot of customers are impacted with this bug.
Regression?
No
Testing
Previously SqlClient tests did not cover this use-case, but test has been added to cover this scenario in this PR.
Risk
Low: The fix has been verified with all bound tests, EF Core tests and many customers have also reported they are able to now run their applications in heavy load successfully. The fix has also been released in Microsoft.Data.SqlClient v1.1.3 and v2.0.0.
cc: @danmosemsft @saurabh500 @David-Engel